from typing import Dict, List
import pandas as pd
from dataclasses import dataclass

@dataclass
class MarketData:
    """股票市场数据模型（整合实时行情、盘口、K线等数据）"""
    price: float = 0.0          # 当前价格
    open: float = 0.0           # 今开
    close: float = 0.0          # 昨收
    high: float = 0.0           # 最高
    low: float = 0.0            # 最低
    volume: int = 0             # 成交量
    amount: float = 0.0         # 成交额
    change: float = 0.0         # 涨跌额
    p_change: float = 0.0       # 涨跌幅（%）
    tick_data: pd.DataFrame = None  # 分时数据
    buy_orders: List[Dict] = None   # 买盘口（买1-买5）
    sell_orders: List[Dict] = None  # 卖盘口（卖1-卖5）
    deals: pd.DataFrame = None      # 成交明细
    kline_data: Dict[str, pd.DataFrame] = None  # K线数据（不同周期）